package com.haibo.mapper;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.github.yulichang.base.MPJBaseMapper;
import com.haibo.entity.model.UserDO;
import com.haibo.entity.vo.UserVO;
import org.apache.ibatis.annotations.Param;

/**
 * @Author : 刘海波
 * @Date: 2025-08-30 17:51
 * @Description:
 */
public interface UserMapper extends MPJBaseMapper<UserDO> {

    /**
     * 分页查询：自己写sql实现分页
     * @param pageParam     分页对象，xml中可以从里面进行取值，传递参数 Page 即自动分页，必须放在第一位
     * @param queryParam    查询参数
     * @return
     */
    IPage<UserDO> page(@Param("pageParam") Page<UserDO> pageParam,
                       @Param("queryParam") UserDO queryParam);


    /**
     * 查询用户的基本信息和身份证信息（需要写sql）
     * @param name  用户名
     * @return
     */
    UserVO loadUserByUsername(@Param("name") String name);
}
